home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 7 / Apprentice-Release7.iso / Environments / Clean 1.2.4 / StdEnv / Clean System Files / StdFile.abc < prev    next >
Encoding:
Text File  |  1997-06-17  |  20.9 KB  |  1,608 lines  |  [TEXT/3PRM]

  1. .comp 914 010111001
  2. .code       0       0       0
  3. .start _nostart_
  4. .depend "StdInt"
  5. .depend "StdString"
  6. .depend "StdMisc"
  7. .depend "StdBool"
  8. .depend "StdOverloaded"
  9. .depend "StdClass"
  10. .depend "StdFile"
  11. .endinfo
  12. .implab _cycle_in_spine
  13. .implab _type_error
  14. .implab _hnf
  15. .impdesc _ind
  16. .implab _indirection _eaind
  17. .impdesc e_system_dif
  18. .implab e_system_nif e_system_eaif
  19. .impdesc e_system_dAP
  20. .implab e_system_nAP e_system_eaAP
  21. .implab e_system_sif
  22. .implab e_system_sAP
  23. .impdesc _Cons
  24. .impdesc _Nil
  25. .impdesc _Tuple
  26. .impdesc d_S.1
  27. .implab n_S.1 ea_S.1
  28. .impdesc d_S.2
  29. .implab n_S.2 ea_S.2
  30. .impdesc d_S.3
  31. .implab n_S.3 ea_S.3
  32. .impdesc d_S.4
  33. .implab n_S.4 ea_S.4
  34. .impdesc d_S.5
  35. .implab n_S.5 ea_S.5
  36. .impdesc d_S.6
  37. .implab n_S.6 ea_S.6
  38. .implab _driver
  39. .string m_StdFile "StdFile"
  40. .implab e_StdInt_sbitand
  41. .implab e_StdInt_sbitor
  42. .implab e_StdInt_s==;i
  43. .implab e_StdMisc_sabort
  44. .export e_StdFile_dopenfiles
  45. .export e_StdFile_sopenfiles
  46. .export e_StdFile_nopenfiles
  47. .desc e_StdFile_dopenfiles e_StdFile_nopenfiles e_StdFile_lopenfiles 1 "openfiles"
  48. .o 2 0
  49. e_StdFile_lopenfiles
  50.     pop_a 1
  51. .d 1 0
  52.     jsr ea1
  53. .o 1 1 i
  54.     push_a 0
  55.     buildI_b 0
  56.     build _Tuple 2 _hnf
  57.     update_a 0 1
  58.     pop_a 1
  59.     pop_b 1
  60. .d 1 0
  61.     rtn
  62. .n 1 e_StdFile_dopenfiles
  63. .o 1 0
  64. e_StdFile_nopenfiles
  65.     push_node _cycle_in_spine 1
  66. .d 1 0
  67.     jsr ea1
  68. .o 1 1 i
  69.     push_a 0
  70.     buildI_b 0
  71.     fill _Tuple 2 _hnf 3
  72.     pop_a 1
  73.     pop_b 1
  74. .d 1 0
  75.     rtn
  76. .o 1 0
  77. e_StdFile_sopenfiles
  78. .d 1 0
  79.     jsr s1
  80. .o 1 1 i
  81.     buildI_b 0
  82.     pop_b 1
  83. .d 2 0
  84.     rtn
  85. .o 1 0
  86. ea1
  87.     jsr_eval 0
  88. .o 1 0
  89. s1
  90.     push_a 0
  91. .d 1 0
  92.     jsr s3
  93. .o 0 1 i
  94.     push_b 0
  95.     pushI 1
  96.     and%
  97.     pushI 0
  98.     push_b 1
  99.     update_b 1 2
  100.     update_b 0 1
  101.     pop_b 1
  102.     eqI
  103.     jmp_false else.1
  104.     jmp then.1
  105. then.1
  106.     pushI 1
  107.     push_b 1
  108.     or%
  109.     create
  110.     push_a 1
  111.     update_a 1 2
  112.     update_a 0 1
  113.     pop_a 1
  114.     update_b 0 1
  115.     pop_b 1
  116. .d 2 1 i
  117.     jsr s4
  118. .o 1 0
  119. .d 1 0
  120.     jmp s2
  121. else.1
  122.     buildAC "openfiles: This world doesn\'t contain files"
  123.     update_a 0 1
  124.     pop_a 1
  125.     pop_b 1
  126. .d 1 0
  127.     jsr e_StdMisc_sabort
  128. .o 1 0
  129.     repl_args 2 2
  130.     jsr_eval 1
  131.     jsr_eval 0
  132.     pushI_a 0
  133.     pop_a 1
  134. .d 1 1 i
  135.     rtn
  136. .o 1 0
  137. s2
  138.     pushI 0
  139. .d 1 1 i
  140.     rtn
  141. .o 1 0
  142. s3
  143.     pushI_a 0
  144.     pop_a 1
  145. .d 0 1 i
  146.     rtn
  147. .o 2 1 i
  148. s4
  149.     fillI_b 0 1
  150.     pop_b 1
  151.     pop_a 1
  152. .d 1 0
  153.     rtn
  154. .export e_StdFile_dclosefiles
  155. .export e_StdFile_sclosefiles
  156. .export e_StdFile_nclosefiles
  157. .export e_StdFile_eaclosefiles
  158. .desc e_StdFile_dclosefiles e_StdFile_nclosefiles e_StdFile_lclosefiles 2 "closefiles"
  159. .o 2 0
  160. e_StdFile_lclosefiles
  161.     push_args 0 1 1
  162.     update_a 2 1
  163.     create
  164.     update_a 0 3
  165.     pop_a 1
  166. .d 3 0
  167.     jmp e_StdFile_eaclosefiles
  168. .n 2 e_StdFile_dclosefiles e_StdFile_eaclosefiles
  169. .o 1 0
  170. e_StdFile_nclosefiles
  171.     push_node _cycle_in_spine 2
  172. .d 3 0
  173.     jmp e_StdFile_eaclosefiles
  174. .o 3 0
  175. e_StdFile_sclosefiles
  176.     pushI_a 0
  177.     pop_a 1
  178. .d 2 1 i
  179.     jmp s5
  180. .o 3 0
  181. e_StdFile_eaclosefiles
  182.     jsr_eval 1
  183.     jsr_eval 0
  184.     pushI_a 0
  185.     pop_a 1
  186. .o 2 1 i
  187. s5
  188.     push_a 0
  189. .d 1 0
  190.     jsr s3
  191. .o 0 1 i
  192.     pushI -2
  193.     push_b 1
  194.     update_b 1 2
  195.     update_b 0 1
  196.     pop_b 1
  197.     and%
  198.     create
  199.     push_a 1
  200.     update_a 1 2
  201.     update_a 0 1
  202.     pop_a 1
  203. .d 2 1 i
  204.     jsr s4
  205. .o 1 0
  206.     push_b 0
  207.     update_b 0 1
  208.     pop_b 1
  209. .d 2 1 i
  210.     jmp s6
  211. .o 2 1 i
  212. s6
  213.     pop_b 1
  214.     fill_a 0 1
  215.     pop_a 1
  216. .d 1 0
  217.     rtn
  218. .export e_StdFile_dfopen
  219. .export e_StdFile_sfopen
  220. .export e_StdFile_nfopen
  221. .desc e_StdFile_dfopen e_StdFile_nfopen e_StdFile_lfopen 3 "fopen"
  222. .o 2 0
  223. e_StdFile_lfopen
  224.     repl_args 2 2
  225. .d 3 0
  226.     jsr ea7
  227. .o 0 4 bfi
  228.     buildI_b 3
  229.     buildF_b 1
  230.     buildB_b 0
  231.     build _Tuple 3 _hnf
  232.     pop_b 4
  233. .d 1 0
  234.     rtn
  235. .n 3 e_StdFile_dfopen
  236. .o 1 0
  237. e_StdFile_nfopen
  238.     push_node _cycle_in_spine 3
  239. .d 3 0
  240.     jsr ea7
  241. .o 0 4 bfi
  242.     buildI_b 3
  243.     buildF_b 1
  244.     buildB_b 0
  245.     fill _Tuple 3 _hnf 3
  246.     pop_b 4
  247. .d 1 0
  248.     rtn
  249. .o 2 1 i
  250. e_StdFile_sfopen
  251.     pushI_a 1
  252.     update_a 0 1
  253.     pop_a 1
  254.     push_b 1
  255.     update_b 1 2
  256.     update_b 0 1
  257.     pop_b 1
  258. .d 1 2 ii
  259.     jsr s7
  260. .o 0 4 bfi
  261.     buildI_b 3
  262.     update_b 2 3
  263.     update_b 1 2
  264.     update_b 0 1
  265.     pop_b 1
  266. .d 1 3 bf
  267.     rtn
  268. .o 3 0
  269. ea7
  270.     jsr_eval 2
  271.     jsr_eval 1
  272.     jsr_eval 0
  273.     pushI_a 2
  274.     pushI_a 1
  275.     push_array 0
  276.     update_a 0 3
  277.     pop_a 3
  278. .o 1 2 ii
  279. s7
  280.     update_b 0 1
  281.     pop_b 1
  282. .d 1 1 i
  283.     jsr    openF
  284. .o 0 3 b f
  285.     push_b 0
  286.     update_b 2 1
  287.     update_b 3 2
  288.     pushI 0
  289.     update_b 0 4
  290.     pop_b 1
  291. .d 0 4 bfi
  292.     rtn
  293. .export e_StdFile_dfclose
  294. .export e_StdFile_sfclose
  295. .export e_StdFile_nfclose
  296. .desc e_StdFile_dfclose e_StdFile_nfclose e_StdFile_lfclose 2 "fclose"
  297. .o 2 0
  298. e_StdFile_lfclose
  299.     repl_args 1 1
  300. .d 2 0
  301.     jsr ea8
  302. .o 0 2 bi
  303.     buildI_b 1
  304.     buildB_b 0
  305.     build _Tuple 2 _hnf
  306.     pop_b 2
  307. .d 1 0
  308.     rtn
  309. .n 2 e_StdFile_dfclose
  310. .o 1 0
  311. e_StdFile_nfclose
  312.     push_node _cycle_in_spine 2
  313. .d 2 0
  314.     jsr ea8
  315. .o 0 2 bi
  316.     buildI_b 1
  317.     buildB_b 0
  318.     fill _Tuple 2 _hnf 2
  319.     pop_b 2
  320. .d 1 0
  321.     rtn
  322. .o 1 2 f
  323. e_StdFile_sfclose
  324.     pushI_a 0
  325.     pop_a 1
  326.     push_b 2
  327.     update_b 1 3
  328.     update_b 2 1
  329.     update_b 0 2
  330.     pop_b 1
  331. .d 0 3 fi
  332.     jsr s8
  333. .o 0 2 bi
  334.     buildI_b 1
  335.     update_b 0 1
  336.     pop_b 1
  337. .d 1 1 b
  338.     rtn
  339. .o 2 0
  340. ea8
  341.     jsr_eval 1
  342.     jsr_eval 0
  343.     pushI_a 1
  344.     pushF_a 0
  345.     pop_a 2
  346. .o 0 3 fi
  347. s8
  348.     update_b 1 2
  349.     update_b 0 1
  350.     pop_b 1
  351. .d 0 2 f
  352.     jsr    closeF
  353. .o 0 1 b
  354.     push_b 0
  355.     pushI 0
  356.     update_b 0 2
  357.     pop_b 1
  358. .d 0 2 bi
  359.     rtn
  360. .export e_StdFile_dfreopen
  361. .export e_StdFile_sfreopen
  362. .export e_StdFile_nfreopen
  363. .desc e_StdFile_dfreopen e_StdFile_nfreopen e_StdFile_lfreopen 2 "freopen"
  364. .o 2 0
  365. e_StdFile_lfreopen
  366.     repl_args 1 1
  367. .d 2 0
  368.     jsr ea9
  369. .o 0 3 bf
  370.     buildF_b 1
  371.     buildB_b 0
  372.     build _Tuple 2 _hnf
  373.     pop_b 3
  374. .d 1 0
  375.     rtn
  376. .n 2 e_StdFile_dfreopen
  377. .o 1 0
  378. e_StdFile_nfreopen
  379.     push_node _cycle_in_spine 2
  380. .d 2 0
  381.     jsr ea9
  382. .o 0 3 bf
  383.     buildF_b 1
  384.     buildB_b 0
  385.     fill _Tuple 2 _hnf 2
  386.     pop_b 3
  387. .d 1 0
  388.     rtn
  389. .o 2 0
  390. ea9
  391.     jsr_eval 1
  392.     jsr_eval 0
  393.     pushI_a 1
  394.     pushF_a 0
  395.     pop_a 2
  396. .o 0 3 fi
  397. e_StdFile_sfreopen
  398. .o 0 3 fi
  399. s9
  400. .inline freopen
  401. .d 0 3 f i
  402.     jsr reopenF
  403. .o 0 3 b f
  404. .end
  405. .d 0 3 bf
  406.     rtn
  407. .export e_StdFile_dfreadc
  408. .export e_StdFile_sfreadc
  409. .export e_StdFile_nfreadc
  410. .desc e_StdFile_dfreadc e_StdFile_nfreadc e_StdFile_lfreadc 1 "freadc"
  411. .o 2 0
  412. e_StdFile_lfreadc
  413.     pop_a 1
  414. .d 1 0
  415.     jsr ea10
  416. .o 0 4 bcf
  417.     buildF_b 2
  418.     buildC_b 1
  419.     buildB_b 0
  420.     build _Tuple 3 _hnf
  421.     pop_b 4
  422. .d 1 0
  423.     rtn
  424. .n 1 e_StdFile_dfreadc
  425. .o 1 0
  426. e_StdFile_nfreadc
  427.     push_node _cycle_in_spine 1
  428. .d 1 0
  429.     jsr ea10
  430. .o 0 4 bcf
  431.     buildF_b 2
  432.     buildC_b 1
  433.     buildB_b 0
  434.     fill _Tuple 3 _hnf 3
  435.     pop_b 4
  436. .d 1 0
  437.     rtn
  438. .o 1 0
  439. ea10
  440.     jsr_eval 0
  441.     pushF_a 0
  442.     pop_a 1
  443. .o 0 2 f
  444. e_StdFile_sfreadc
  445. .o 0 2 f
  446. s10
  447. .inline freadc
  448. .d 0 2 f
  449.     jsr    readFC
  450. .o 0 4 b c f
  451. .end
  452. .d 0 4 bcf
  453.     rtn
  454. .export e_StdFile_dfreadi
  455. .export e_StdFile_sfreadi
  456. .export e_StdFile_nfreadi
  457. .desc e_StdFile_dfreadi e_StdFile_nfreadi e_StdFile_lfreadi 1 "freadi"
  458. .o 2 0
  459. e_StdFile_lfreadi
  460.     pop_a 1
  461. .d 1 0
  462.     jsr ea11
  463. .o 0 4 bif
  464.     buildF_b 2
  465.     buildI_b 1
  466.     buildB_b 0
  467.     build _Tuple 3 _hnf
  468.     pop_b 4
  469. .d 1 0
  470.     rtn
  471. .n 1 e_StdFile_dfreadi
  472. .o 1 0
  473. e_StdFile_nfreadi
  474.     push_node _cycle_in_spine 1
  475. .d 1 0
  476.     jsr ea11
  477. .o 0 4 bif
  478.     buildF_b 2
  479.     buildI_b 1
  480.     buildB_b 0
  481.     fill _Tuple 3 _hnf 3
  482.     pop_b 4
  483. .d 1 0
  484.     rtn
  485. .o 1 0
  486. ea11
  487.     jsr_eval 0
  488.     pushF_a 0
  489.     pop_a 1
  490. .o 0 2 f
  491. e_StdFile_sfreadi
  492. .o 0 2 f
  493. s11
  494. .inline freadi
  495. .d 0 2 f
  496.     jsr    readFI
  497. .o 0 4 b i f
  498. .end
  499. .d 0 4 bif
  500.     rtn
  501. .export e_StdFile_dfreadr
  502. .export e_StdFile_sfreadr
  503. .export e_StdFile_nfreadr
  504. .desc e_StdFile_dfreadr e_StdFile_nfreadr e_StdFile_lfreadr 1 "freadr"
  505. .o 2 0
  506. e_StdFile_lfreadr
  507.     pop_a 1
  508. .d 1 0
  509.     jsr ea12
  510. .o 0 5 brf
  511.     buildF_b 3
  512.     buildR_b 1
  513.     buildB_b 0
  514.     build _Tuple 3 _hnf
  515.     pop_b 5
  516. .d 1 0
  517.     rtn
  518. .n 1 e_StdFile_dfreadr
  519. .o 1 0
  520. e_StdFile_nfreadr
  521.     push_node _cycle_in_spine 1
  522. .d 1 0
  523.     jsr ea12
  524. .o 0 5 brf
  525.     buildF_b 3
  526.     buildR_b 1
  527.     buildB_b 0
  528.     fill _Tuple 3 _hnf 3
  529.     pop_b 5
  530. .d 1 0
  531.     rtn
  532. .o 1 0
  533. ea12
  534.     jsr_eval 0
  535.     pushF_a 0
  536.     pop_a 1
  537. .o 0 2 f
  538. e_StdFile_sfreadr
  539. .o 0 2 f
  540. s12
  541. .inline freadr
  542. .d 0 2 f
  543.     jsr    readFR
  544. .o 0 5 b r f
  545. .end
  546. .d 0 5 brf
  547.     rtn
  548. .export e_StdFile_dfreads
  549. .export e_StdFile_sfreads
  550. .export e_StdFile_nfreads
  551. .desc e_StdFile_dfreads e_StdFile_nfreads e_StdFile_lfreads 2 "freads"
  552. .o 2 0
  553. e_StdFile_lfreads
  554.     repl_args 1 1
  555. .d 2 0
  556.     jsr ea13
  557. .o 1 2 f
  558.     buildF_b 0
  559.     create
  560.     push_a 2
  561.     fill ARRAY 1 _hnf 1
  562.     build _Tuple 2 _hnf
  563.     update_a 0 1
  564.     pop_a 1
  565.     pop_b 2
  566. .d 1 0
  567.     rtn
  568. .n 2 e_StdFile_dfreads
  569. .o 1 0
  570. e_StdFile_nfreads
  571.     push_node _cycle_in_spine 2
  572. .d 2 0
  573.     jsr ea13
  574. .o 1 2 f
  575.     buildF_b 0
  576.     create
  577.     push_a 2
  578.     fill ARRAY 1 _hnf 1
  579.     fill _Tuple 2 _hnf 3
  580.     pop_a 1
  581.     pop_b 2
  582. .d 1 0
  583.     rtn
  584. .o 2 0
  585. ea13
  586.     jsr_eval 1
  587.     jsr_eval 0
  588.     pushI_a 1
  589.     pushF_a 0
  590.     pop_a 2
  591. .o 0 3 fi
  592. e_StdFile_sfreads
  593. .o 0 3 fi
  594. s13
  595. .inline freads
  596. .d 0 3 f i
  597.     jsr readFS
  598. .o 1 2 f
  599. .end
  600. .d 1 2 f
  601.     rtn
  602. .export e_StdFile_dfreadline
  603. .export e_StdFile_sfreadline
  604. .export e_StdFile_nfreadline
  605. .desc e_StdFile_dfreadline e_StdFile_nfreadline e_StdFile_lfreadline 1 "freadline"
  606. .o 2 0
  607. e_StdFile_lfreadline
  608.     pop_a 1
  609. .d 1 0
  610.     jsr ea14
  611. .o 1 2 f
  612.     buildF_b 0
  613.     create
  614.     push_a 2
  615.     fill ARRAY 1 _hnf 1
  616.     build _Tuple 2 _hnf
  617.     update_a 0 1
  618.     pop_a 1
  619.     pop_b 2
  620. .d 1 0
  621.     rtn
  622. .n 1 e_StdFile_dfreadline
  623. .o 1 0
  624. e_StdFile_nfreadline
  625.     push_node _cycle_in_spine 1
  626. .d 1 0
  627.     jsr ea14
  628. .o 1 2 f
  629.     buildF_b 0
  630.     create
  631.     push_a 2
  632.     fill ARRAY 1 _hnf 1
  633.     fill _Tuple 2 _hnf 3
  634.     pop_a 1
  635.     pop_b 2
  636. .d 1 0
  637.     rtn
  638. .o 1 0
  639. ea14
  640.     jsr_eval 0
  641.     pushF_a 0
  642.     pop_a 1
  643. .o 0 2 f
  644. e_StdFile_sfreadline
  645. .o 0 2 f
  646. s14
  647. .inline freadline
  648. .d 0 2 f
  649.     jsr readLineF
  650. .o 1 2 f
  651. .end
  652. .d 1 2 f
  653.     rtn
  654. .export e_StdFile_dfwritec
  655. .export e_StdFile_sfwritec
  656. .export e_StdFile_nfwritec
  657. .desc e_StdFile_dfwritec e_StdFile_nfwritec e_StdFile_lfwritec 2 "fwritec"
  658. .o 2 0
  659. e_StdFile_lfwritec
  660.     repl_args 1 1
  661. .d 2 0
  662.     jsr ea15
  663. .o 0 2 f
  664.     buildF_b 0
  665.     pop_b 2
  666. .d 1 0
  667.     rtn
  668. .n 2 e_StdFile_dfwritec
  669. .o 1 0
  670. e_StdFile_nfwritec
  671.     push_node _cycle_in_spine 2
  672. .d 2 0
  673.     jsr ea15
  674. .o 0 2 f
  675.     fillF_b 0 0
  676.     pop_b 2
  677. .d 1 0
  678.     rtn
  679. .o 2 0
  680. ea15
  681.     jsr_eval 1
  682.     jsr_eval 0
  683.     pushF_a 1
  684.     pushC_a 0
  685.     pop_a 2
  686. .o 0 3 cf
  687. e_StdFile_sfwritec
  688. .o 0 3 cf
  689. s15
  690. .inline fwritec
  691. .d 0 3 c f
  692.     jsr writeFC
  693. .o 0 2 f
  694. .end
  695. .d 0 2 f
  696.     rtn
  697. .export e_StdFile_dfwritei
  698. .export e_StdFile_sfwritei
  699. .export e_StdFile_nfwritei
  700. .desc e_StdFile_dfwritei e_StdFile_nfwritei e_StdFile_lfwritei 2 "fwritei"
  701. .o 2 0
  702. e_StdFile_lfwritei
  703.     repl_args 1 1
  704. .d 2 0
  705.     jsr ea16
  706. .o 0 2 f
  707.     buildF_b 0
  708.     pop_b 2
  709. .d 1 0
  710.     rtn
  711. .n 2 e_StdFile_dfwritei
  712. .o 1 0
  713. e_StdFile_nfwritei
  714.     push_node _cycle_in_spine 2
  715. .d 2 0
  716.     jsr ea16
  717. .o 0 2 f
  718.     fillF_b 0 0
  719.     pop_b 2
  720. .d 1 0
  721.     rtn
  722. .o 2 0
  723. ea16
  724.     jsr_eval 1
  725.     jsr_eval 0
  726.     pushF_a 1
  727.     pushI_a 0
  728.     pop_a 2
  729. .o 0 3 if
  730. e_StdFile_sfwritei
  731. .o 0 3 if
  732. s16
  733. .inline fwritei
  734. .d 0 3 i f
  735.     jsr writeFI
  736. .o 0 2 f
  737. .end
  738. .d 0 2 f
  739.     rtn
  740. .export e_StdFile_dfwriter
  741. .export e_StdFile_sfwriter
  742. .export e_StdFile_nfwriter
  743. .desc e_StdFile_dfwriter e_StdFile_nfwriter e_StdFile_lfwriter 2 "fwriter"
  744. .o 2 0
  745. e_StdFile_lfwriter
  746.     repl_args 1 1
  747. .d 2 0
  748.     jsr ea17
  749. .o 0 2 f
  750.     buildF_b 0
  751.     pop_b 2
  752. .d 1 0
  753.     rtn
  754. .n 2 e_StdFile_dfwriter
  755. .o 1 0
  756. e_StdFile_nfwriter
  757.     push_node _cycle_in_spine 2
  758. .d 2 0
  759.     jsr ea17
  760. .o 0 2 f
  761.     fillF_b 0 0
  762.     pop_b 2
  763. .d 1 0
  764.     rtn
  765. .o 2 0
  766. ea17
  767.     jsr_eval 1
  768.     jsr_eval 0
  769.     pushF_a 1
  770.     pushR_a 0
  771.     pop_a 2
  772. .o 0 4 rf
  773. e_StdFile_sfwriter
  774. .o 0 4 rf
  775. s17
  776. .inline fwriter
  777. .d 0 4 r f
  778.     jsr writeFR
  779. .o 0 2 f
  780. .end
  781. .d 0 2 f
  782.     rtn
  783. .export e_StdFile_dfwrites
  784. .export e_StdFile_sfwrites
  785. .export e_StdFile_nfwrites
  786. .desc e_StdFile_dfwrites e_StdFile_nfwrites e_StdFile_lfwrites 2 "fwrites"
  787. .o 2 0
  788. e_StdFile_lfwrites
  789.     repl_args 1 1
  790. .d 2 0
  791.     jsr ea18
  792. .o 0 2 f
  793.     buildF_b 0
  794.     pop_b 2
  795. .d 1 0
  796.     rtn
  797. .n 2 e_StdFile_dfwrites
  798. .o 1 0
  799. e_StdFile_nfwrites
  800.     push_node _cycle_in_spine 2
  801. .d 2 0
  802.     jsr ea18
  803. .o 0 2 f
  804.     fillF_b 0 0
  805.     pop_b 2
  806. .d 1 0
  807.     rtn
  808. .o 2 0
  809. ea18
  810.     jsr_eval 1
  811.     jsr_eval 0
  812.     pushF_a 1
  813.     push_array 0
  814.     update_a 0 2
  815.     pop_a 2
  816. .o 1 2 f
  817. e_StdFile_sfwrites
  818. .o 1 2 f
  819. s18
  820. .inline fwrites
  821. .d 1 2 f
  822.     jsr writeFS
  823. .o 0 2 f
  824. .end
  825. .d 0 2 f
  826.     rtn
  827. .export e_StdFile_dfend
  828. .export e_StdFile_sfend
  829. .export e_StdFile_nfend
  830. .desc e_StdFile_dfend e_StdFile_nfend e_StdFile_lfend 1 "fend"
  831. .o 2 0
  832. e_StdFile_lfend
  833.     pop_a 1
  834. .d 1 0
  835.     jsr ea19
  836. .o 0 3 bf
  837.     buildF_b 1
  838.     buildB_b 0
  839.     build _Tuple 2 _hnf
  840.     pop_b 3
  841. .d 1 0
  842.     rtn
  843. .n 1 e_StdFile_dfend
  844. .o 1 0
  845. e_StdFile_nfend
  846.     push_node _cycle_in_spine 1
  847. .d 1 0
  848.     jsr ea19
  849. .o 0 3 bf
  850.     buildF_b 1
  851.     buildB_b 0
  852.     fill _Tuple 2 _hnf 2
  853.     pop_b 3
  854. .d 1 0
  855.     rtn
  856. .o 1 0
  857. ea19
  858.     jsr_eval 0
  859.     pushF_a 0
  860.     pop_a 1
  861. .o 0 2 f
  862. e_StdFile_sfend
  863. .o 0 2 f
  864. s19
  865. .inline fend
  866. .d 0 2 f
  867.     jsr endF
  868. .o 0 3 b f
  869. .end
  870. .d 0 3 bf
  871.     rtn
  872. .export e_StdFile_dferror
  873. .export e_StdFile_sferror
  874. .export e_StdFile_nferror
  875. .desc e_StdFile_dferror e_StdFile_nferror e_StdFile_lferror 1 "ferror"
  876. .o 2 0
  877. e_StdFile_lferror
  878.     pop_a 1
  879. .d 1 0
  880.     jsr ea20
  881. .o 0 3 bf
  882.     buildF_b 1
  883.     buildB_b 0
  884.     build _Tuple 2 _hnf
  885.     pop_b 3
  886. .d 1 0
  887.     rtn
  888. .n 1 e_StdFile_dferror
  889. .o 1 0
  890. e_StdFile_nferror
  891.     push_node _cycle_in_spine 1
  892. .d 1 0
  893.     jsr ea20
  894. .o 0 3 bf
  895.     buildF_b 1
  896.     buildB_b 0
  897.     fill _Tuple 2 _hnf 2
  898.     pop_b 3
  899. .d 1 0
  900.     rtn
  901. .o 1 0
  902. ea20
  903.     jsr_eval 0
  904.     pushF_a 0
  905.     pop_a 1
  906. .o 0 2 f
  907. e_StdFile_sferror
  908. .o 0 2 f
  909. s20
  910. .inline ferror
  911. .d 0 2 f
  912.     jsr errorF
  913. .o 0 3 b f
  914. .end
  915. .d 0 3 bf
  916.     rtn
  917. .export e_StdFile_dfposition
  918. .export e_StdFile_sfposition
  919. .export e_StdFile_nfposition
  920. .desc e_StdFile_dfposition e_StdFile_nfposition e_StdFile_lfposition 1 "fposition"
  921. .o 2 0
  922. e_StdFile_lfposition
  923.     pop_a 1
  924. .d 1 0
  925.     jsr ea21
  926. .o 0 3 if
  927.     buildF_b 1
  928.     buildI_b 0
  929.     build _Tuple 2 _hnf
  930.     pop_b 3
  931. .d 1 0
  932.     rtn
  933. .n 1 e_StdFile_dfposition
  934. .o 1 0
  935. e_StdFile_nfposition
  936.     push_node _cycle_in_spine 1
  937. .d 1 0
  938.     jsr ea21
  939. .o 0 3 if
  940.     buildF_b 1
  941.     buildI_b 0
  942.     fill _Tuple 2 _hnf 2
  943.     pop_b 3
  944. .d 1 0
  945.     rtn
  946. .o 1 0
  947. ea21
  948.     jsr_eval 0
  949.     pushF_a 0
  950.     pop_a 1
  951. .o 0 2 f
  952. e_StdFile_sfposition
  953. .o 0 2 f
  954. s21
  955. .inline fposition
  956. .d 0 2 f
  957.     jsr positionF
  958. .o 0 3 i f
  959. .end
  960. .d 0 3 if
  961.     rtn
  962. .export e_StdFile_dfseek
  963. .export e_StdFile_sfseek
  964. .export e_StdFile_nfseek
  965. .desc e_StdFile_dfseek e_StdFile_nfseek e_StdFile_lfseek 3 "fseek"
  966. .o 2 0
  967. e_StdFile_lfseek
  968.     repl_args 2 2
  969. .d 3 0
  970.     jsr ea22
  971. .o 0 3 bf
  972.     buildF_b 1
  973.     buildB_b 0
  974.     build _Tuple 2 _hnf
  975.     pop_b 3
  976. .d 1 0
  977.     rtn
  978. .n 3 e_StdFile_dfseek
  979. .o 1 0
  980. e_StdFile_nfseek
  981.     push_node _cycle_in_spine 3
  982. .d 3 0
  983.     jsr ea22
  984. .o 0 3 bf
  985.     buildF_b 1
  986.     buildB_b 0
  987.     fill _Tuple 2 _hnf 2
  988.     pop_b 3
  989. .d 1 0
  990.     rtn
  991. .o 3 0
  992. ea22
  993.     jsr_eval 2
  994.     jsr_eval 1
  995.     jsr_eval 0
  996.     pushI_a 2
  997.     pushI_a 1
  998.     pushF_a 0
  999.     pop_a 3
  1000. .o 0 4 fii
  1001. e_StdFile_sfseek
  1002. .o 0 4 fii
  1003. s22
  1004. .inline fseek
  1005. .d 0 4 f i i
  1006.     jsr seekF
  1007. .o 0 3 b f
  1008. .end
  1009. .d 0 3 bf
  1010.     rtn
  1011. .export e_StdFile_dstdio
  1012. .export e_StdFile_sstdio
  1013. .export e_StdFile_nstdio
  1014. .desc e_StdFile_dstdio e_StdFile_nstdio e_StdFile_lstdio 1 "stdio"
  1015. .o 2 0
  1016. e_StdFile_lstdio
  1017.     pop_a 1
  1018. .d 1 0
  1019.     jsr ea23
  1020. .o 0 3 fi
  1021.     buildI_b 2
  1022.     buildF_b 0
  1023.     build _Tuple 2 _hnf
  1024.     pop_b 3
  1025. .d 1 0
  1026.     rtn
  1027. .n 1 e_StdFile_dstdio
  1028. .o 1 0
  1029. e_StdFile_nstdio
  1030.     push_node _cycle_in_spine 1
  1031. .d 1 0
  1032.     jsr ea23
  1033. .o 0 3 fi
  1034.     buildI_b 2
  1035.     buildF_b 0
  1036.     fill _Tuple 2 _hnf 2
  1037.     pop_b 3
  1038. .d 1 0
  1039.     rtn
  1040. .o 1 0
  1041. e_StdFile_sstdio
  1042.     pushI_a 0
  1043.     pop_a 1
  1044. .d 0 1 i
  1045.     jsr s23
  1046. .o 0 3 fi
  1047.     buildI_b 2
  1048.     update_b 1 2
  1049.     update_b 0 1
  1050.     pop_b 1
  1051. .d 1 2 f
  1052.     rtn
  1053. .o 1 0
  1054. ea23
  1055.     jsr_eval 0
  1056.     pushI_a 0
  1057.     pop_a 1
  1058. .o 0 1 i
  1059. s23
  1060.     pop_b 1
  1061. .d 0 0
  1062.     jsr    stdioF
  1063. .o 0 2 f
  1064.     push_b 0
  1065.     update_b 2 1
  1066.     pushI 0
  1067.     update_b 0 3
  1068.     pop_b 1
  1069. .d 0 3 fi
  1070.     rtn
  1071. .export e_StdFile_dstderr
  1072. .export e_StdFile_sstderr
  1073. .export e_StdFile_nstderr
  1074. .desc e_StdFile_dstderr e_StdFile_nstderr e_StdFile_lstderr 0 "stderr"
  1075. .o 1 0
  1076. e_StdFile_lstderr
  1077.     halt
  1078. .n 0 e_StdFile_dstderr
  1079. .o 1 0
  1080. e_StdFile_nstderr
  1081.     push_node _cycle_in_spine 0
  1082. .d 0 0
  1083.     jsr ea24
  1084. .o 0 2 f
  1085.     fillF_b 0 0
  1086.     pop_b 2
  1087. .d 1 0
  1088.     rtn
  1089. .o 0 0
  1090. ea24
  1091. .o 0 0
  1092. e_StdFile_sstderr
  1093. .o 0 0
  1094. s24
  1095. .inline stderr
  1096. .d 0 0
  1097.     jsr    stderrF
  1098. .o 0 2 f
  1099. .end
  1100. .d 0 2 f
  1101.     rtn
  1102. .export e_StdFile_dsfopen
  1103. .export e_StdFile_ssfopen
  1104. .export e_StdFile_nsfopen
  1105. .desc e_StdFile_dsfopen e_StdFile_nsfopen e_StdFile_lsfopen 3 "sfopen"
  1106. .o 2 0
  1107. e_StdFile_lsfopen
  1108.     repl_args 2 2
  1109. .d 3 0
  1110.     jsr ea25
  1111. .o 0 4 bfi
  1112.     buildI_b 3
  1113.     buildF_b 1
  1114.     buildB_b 0
  1115.     build _Tuple 3 _hnf
  1116.     pop_b 4
  1117. .d 1 0
  1118.     rtn
  1119. .n 3 e_StdFile_dsfopen
  1120. .o 1 0
  1121. e_StdFile_nsfopen
  1122.     push_node _cycle_in_spine 3
  1123. .d 3 0
  1124.     jsr ea25
  1125. .o 0 4 bfi
  1126.     buildI_b 3
  1127.     buildF_b 1
  1128.     buildB_b 0
  1129.     fill _Tuple 3 _hnf 3
  1130.     pop_b 4
  1131. .d 1 0
  1132.     rtn
  1133. .o 2 1 i
  1134. e_StdFile_ssfopen
  1135.     pushI_a 1
  1136.     update_a 0 1
  1137.     pop_a 1
  1138.     push_b 1
  1139.     update_b 1 2
  1140.     update_b 0 1
  1141.     pop_b 1
  1142. .d 1 2 ii
  1143.     jsr s25
  1144. .o 0 4 bfi
  1145.     buildI_b 3
  1146.     update_b 2 3
  1147.     update_b 1 2
  1148.     update_b 0 1
  1149.     pop_b 1
  1150. .d 1 3 bf
  1151.     rtn
  1152. .o 3 0
  1153. ea25
  1154.     jsr_eval 2
  1155.     jsr_eval 1
  1156.     jsr_eval 0
  1157.     pushI_a 2
  1158.     pushI_a 1
  1159.     push_array 0
  1160.     update_a 0 3
  1161.     pop_a 3
  1162. .o 1 2 ii
  1163. s25
  1164.     update_b 0 1
  1165.     pop_b 1
  1166. .d 1 1 i
  1167.     jsr    openSF
  1168. .o 0 3 b f
  1169.     push_b 0
  1170.     update_b 2 1
  1171.     update_b 3 2
  1172.     pushI 0
  1173.     update_b 0 4
  1174.     pop_b 1
  1175. .d 0 4 bfi
  1176.     rtn
  1177. .export e_StdFile_dsfreadc
  1178. .export e_StdFile_ssfreadc
  1179. .export e_StdFile_nsfreadc
  1180. .desc e_StdFile_dsfreadc e_StdFile_nsfreadc e_StdFile_lsfreadc 1 "sfreadc"
  1181. .o 2 0
  1182. e_StdFile_lsfreadc
  1183.     pop_a 1
  1184. .d 1 0
  1185.     jsr ea26
  1186. .o 0 4 bcf
  1187.     buildF_b 2
  1188.     buildC_b 1
  1189.     buildB_b 0
  1190.     build _Tuple 3 _hnf
  1191.     pop_b 4
  1192. .d 1 0
  1193.     rtn
  1194. .n 1 e_StdFile_dsfreadc
  1195. .o 1 0
  1196. e_StdFile_nsfreadc
  1197.     push_node _cycle_in_spine 1
  1198. .d 1 0
  1199.     jsr ea26
  1200. .o 0 4 bcf
  1201.     buildF_b 2
  1202.     buildC_b 1
  1203.     buildB_b 0
  1204.     fill _Tuple 3 _hnf 3
  1205.     pop_b 4
  1206. .d 1 0
  1207.     rtn
  1208. .o 1 0
  1209. ea26
  1210.     jsr_eval 0
  1211.     pushF_a 0
  1212.     pop_a 1
  1213. .o 0 2 f
  1214. e_StdFile_ssfreadc
  1215. .o 0 2 f
  1216. s26
  1217. .inline sfreadc
  1218. .d 0 2 f
  1219.     jsr    readSFC
  1220. .o 0 4 b c f
  1221. .end
  1222. .d 0 4 bcf
  1223.     rtn
  1224. .export e_StdFile_dsfreadi
  1225. .export e_StdFile_ssfreadi
  1226. .export e_StdFile_nsfreadi
  1227. .desc e_StdFile_dsfreadi e_StdFile_nsfreadi e_StdFile_lsfreadi 1 "sfreadi"
  1228. .o 2 0
  1229. e_StdFile_lsfreadi
  1230.     pop_a 1
  1231. .d 1 0
  1232.     jsr ea27
  1233. .o 0 4 bif
  1234.     buildF_b 2
  1235.     buildI_b 1
  1236.     buildB_b 0
  1237.     build _Tuple 3 _hnf
  1238.     pop_b 4
  1239. .d 1 0
  1240.     rtn
  1241. .n 1 e_StdFile_dsfreadi
  1242. .o 1 0
  1243. e_StdFile_nsfreadi
  1244.     push_node _cycle_in_spine 1
  1245. .d 1 0
  1246.     jsr ea27
  1247. .o 0 4 bif
  1248.     buildF_b 2
  1249.     buildI_b 1
  1250.     buildB_b 0
  1251.     fill _Tuple 3 _hnf 3
  1252.     pop_b 4
  1253. .d 1 0
  1254.     rtn
  1255. .o 1 0
  1256. ea27
  1257.     jsr_eval 0
  1258.     pushF_a 0
  1259.     pop_a 1
  1260. .o 0 2 f
  1261. e_StdFile_ssfreadi
  1262. .o 0 2 f
  1263. s27
  1264. .inline sfreadi
  1265. .d 0 2 f
  1266.     jsr    readSFI
  1267. .o 0 4 b i f
  1268. .end
  1269. .d 0 4 bif
  1270.     rtn
  1271. .export e_StdFile_dsfreadr
  1272. .export e_StdFile_ssfreadr
  1273. .export e_StdFile_nsfreadr
  1274. .desc e_StdFile_dsfreadr e_StdFile_nsfreadr e_StdFile_lsfreadr 1 "sfreadr"
  1275. .o 2 0
  1276. e_StdFile_lsfreadr
  1277.     pop_a 1
  1278. .d 1 0
  1279.     jsr ea28
  1280. .o 0 5 brf
  1281.     buildF_b 3
  1282.     buildR_b 1
  1283.     buildB_b 0
  1284.     build _Tuple 3 _hnf
  1285.     pop_b 5
  1286. .d 1 0
  1287.     rtn
  1288. .n 1 e_StdFile_dsfreadr
  1289. .o 1 0
  1290. e_StdFile_nsfreadr
  1291.     push_node _cycle_in_spine 1
  1292. .d 1 0
  1293.     jsr ea28
  1294. .o 0 5 brf
  1295.     buildF_b 3
  1296.     buildR_b 1
  1297.     buildB_b 0
  1298.     fill _Tuple 3 _hnf 3
  1299.     pop_b 5
  1300. .d 1 0
  1301.     rtn
  1302. .o 1 0
  1303. ea28
  1304.     jsr_eval 0
  1305.     pushF_a 0
  1306.     pop_a 1
  1307. .o 0 2 f
  1308. e_StdFile_ssfreadr
  1309. .o 0 2 f
  1310. s28
  1311. .inline sfreadr
  1312. .d 0 2 f
  1313.     jsr    readSFR
  1314. .o 0 5 b r f
  1315. .end
  1316. .d 0 5 brf
  1317.     rtn
  1318. .export e_StdFile_dsfreads
  1319. .export e_StdFile_ssfreads
  1320. .export e_StdFile_nsfreads
  1321. .desc e_StdFile_dsfreads e_StdFile_nsfreads e_StdFile_lsfreads 2 "sfreads"
  1322. .o 2 0
  1323. e_StdFile_lsfreads
  1324.     repl_args 1 1
  1325. .d 2 0
  1326.     jsr ea29
  1327. .o 1 2 f
  1328.     buildF_b 0
  1329.     create
  1330.     push_a 2
  1331.     fill ARRAY 1 _hnf 1
  1332.     build _Tuple 2 _hnf
  1333.     update_a 0 1
  1334.     pop_a 1
  1335.     pop_b 2
  1336. .d 1 0
  1337.     rtn
  1338. .n 2 e_StdFile_dsfreads
  1339. .o 1 0
  1340. e_StdFile_nsfreads
  1341.     push_node _cycle_in_spine 2
  1342. .d 2 0
  1343.     jsr ea29
  1344. .o 1 2 f
  1345.     buildF_b 0
  1346.     create
  1347.     push_a 2
  1348.     fill ARRAY 1 _hnf 1
  1349.     fill _Tuple 2 _hnf 3
  1350.     pop_a 1
  1351.     pop_b 2
  1352. .d 1 0
  1353.     rtn
  1354. .o 2 0
  1355. ea29
  1356.     jsr_eval 1
  1357.     jsr_eval 0
  1358.     pushI_a 1
  1359.     pushF_a 0
  1360.     pop_a 2
  1361. .o 0 3 fi
  1362. e_StdFile_ssfreads
  1363. .o 0 3 fi
  1364. s29
  1365. .inline sfreads
  1366. .d 0 3 f i
  1367.     jsr readSFS
  1368. .o 1 2 f
  1369. .end
  1370. .d 1 2 f
  1371.     rtn
  1372. .export e_StdFile_dsfreadline
  1373. .export e_StdFile_ssfreadline
  1374. .export e_StdFile_nsfreadline
  1375. .desc e_StdFile_dsfreadline e_StdFile_nsfreadline e_StdFile_lsfreadline 1 "sfreadline"
  1376. .o 2 0
  1377. e_StdFile_lsfreadline
  1378.     pop_a 1
  1379. .d 1 0
  1380.     jsr ea30
  1381. .o 1 2 f
  1382.     buildF_b 0
  1383.     create
  1384.     push_a 2
  1385.     fill ARRAY 1 _hnf 1
  1386.     build _Tuple 2 _hnf
  1387.     update_a 0 1
  1388.     pop_a 1
  1389.     pop_b 2
  1390. .d 1 0
  1391.     rtn
  1392. .n 1 e_StdFile_dsfreadline
  1393. .o 1 0
  1394. e_StdFile_nsfreadline
  1395.     push_node _cycle_in_spine 1
  1396. .d 1 0
  1397.     jsr ea30
  1398. .o 1 2 f
  1399.     buildF_b 0
  1400.     create
  1401.     push_a 2
  1402.     fill ARRAY 1 _hnf 1
  1403.     fill _Tuple 2 _hnf 3
  1404.     pop_a 1
  1405.     pop_b 2
  1406. .d 1 0
  1407.     rtn
  1408. .o 1 0
  1409. ea30
  1410.     jsr_eval 0
  1411.     pushF_a 0
  1412.     pop_a 1
  1413. .o 0 2 f
  1414. e_StdFile_ssfreadline
  1415. .o 0 2 f
  1416. s30
  1417. .inline sfreadline
  1418. .d 0 2 f
  1419.     jsr readLineSF
  1420. .o 1 2 f
  1421. .end
  1422. .d 1 2 f
  1423.     rtn
  1424. .export e_StdFile_dsfseek
  1425. .export e_StdFile_ssfseek
  1426. .export e_StdFile_nsfseek
  1427. .desc e_StdFile_dsfseek e_StdFile_nsfseek e_StdFile_lsfseek 3 "sfseek"
  1428. .o 2 0
  1429. e_StdFile_lsfseek
  1430.     repl_args 2 2
  1431. .d 3 0
  1432.     jsr ea31
  1433. .o 0 3 bf
  1434.     buildF_b 1
  1435.     buildB_b 0
  1436.     build _Tuple 2 _hnf
  1437.     pop_b 3
  1438. .d 1 0
  1439.     rtn
  1440. .n 3 e_StdFile_dsfseek
  1441. .o 1 0
  1442. e_StdFile_nsfseek
  1443.     push_node _cycle_in_spine 3
  1444. .d 3 0
  1445.     jsr ea31
  1446. .o 0 3 bf
  1447.     buildF_b 1
  1448.     buildB_b 0
  1449.     fill _Tuple 2 _hnf 2
  1450.     pop_b 3
  1451. .d 1 0
  1452.     rtn
  1453. .o 3 0
  1454. ea31
  1455.     jsr_eval 2
  1456.     jsr_eval 1
  1457.     jsr_eval 0
  1458.     pushI_a 2
  1459.     pushI_a 1
  1460.     pushF_a 0
  1461.     pop_a 3
  1462. .o 0 4 fii
  1463. e_StdFile_ssfseek
  1464. .o 0 4 fii
  1465. s31
  1466. .inline sfseek
  1467. .d 0 4 f i i
  1468.     jsr seekSF
  1469. .o 0 3 b f
  1470. .end
  1471. .d 0 3 bf
  1472.     rtn
  1473. .export e_StdFile_dfshare
  1474. .export e_StdFile_sfshare
  1475. .export e_StdFile_nfshare
  1476. .desc e_StdFile_dfshare e_StdFile_nfshare e_StdFile_lfshare 1 "fshare"
  1477. .o 2 0
  1478. e_StdFile_lfshare
  1479.     pop_a 1
  1480. .d 1 0
  1481.     jsr ea32
  1482. .o 0 2 f
  1483.     buildF_b 0
  1484.     pop_b 2
  1485. .d 1 0
  1486.     rtn
  1487. .n 1 e_StdFile_dfshare
  1488. .o 1 0
  1489. e_StdFile_nfshare
  1490.     push_node _cycle_in_spine 1
  1491. .d 1 0
  1492.     jsr ea32
  1493. .o 0 2 f
  1494.     fillF_b 0 0
  1495.     pop_b 2
  1496. .d 1 0
  1497.     rtn
  1498. .o 1 0
  1499. ea32
  1500.     jsr_eval 0
  1501.     pushF_a 0
  1502.     pop_a 1
  1503. .o 0 2 f
  1504. e_StdFile_sfshare
  1505. .o 0 2 f
  1506. s32
  1507. .inline fshare
  1508. .d 0 2 f
  1509.     jsr shareF
  1510. .o 0 2 f
  1511. .end
  1512. .d 0 2 f
  1513.     rtn
  1514. .export e_StdFile_dsfend
  1515. .export e_StdFile_ssfend
  1516. .export e_StdFile_nsfend
  1517. .desc e_StdFile_dsfend e_StdFile_nsfend e_StdFile_lsfend 1 "sfend"
  1518. .o 2 0
  1519. e_StdFile_lsfend
  1520.     pop_a 1
  1521. .d 1 0
  1522.     jsr ea33
  1523. .o 0 1 b
  1524.     buildB_b 0
  1525.     pop_b 1
  1526. .d 1 0
  1527.     rtn
  1528. .n 1 e_StdFile_dsfend
  1529. .o 1 0
  1530. e_StdFile_nsfend
  1531.     push_node _cycle_in_spine 1
  1532. .d 1 0
  1533.     jsr ea33
  1534. .o 0 1 b
  1535.     fillB_b 0 0
  1536.     pop_b 1
  1537. .d 1 0
  1538.     rtn
  1539. .o 1 0
  1540. ea33
  1541.     jsr_eval 0
  1542.     pushF_a 0
  1543.     pop_a 1
  1544. .o 0 2 f
  1545. e_StdFile_ssfend
  1546. .o 0 2 f
  1547. s33
  1548. .inline sfend
  1549. .d 0 2 f
  1550.     jsr endSF
  1551. .o 0 1 b
  1552. .end
  1553. .d 0 1 b
  1554.     rtn
  1555. .export e_StdFile_dsfposition
  1556. .export e_StdFile_ssfposition
  1557. .export e_StdFile_nsfposition
  1558. .desc e_StdFile_dsfposition e_StdFile_nsfposition e_StdFile_lsfposition 1 "sfposition"
  1559. .o 2 0
  1560. e_StdFile_lsfposition
  1561.     pop_a 1
  1562. .d 1 0
  1563.     jsr ea34
  1564. .o 0 1 i
  1565.     buildI_b 0
  1566.     pop_b 1
  1567. .d 1 0
  1568.     rtn
  1569. .n 1 e_StdFile_dsfposition
  1570. .o 1 0
  1571. e_StdFile_nsfposition
  1572.     push_node _cycle_in_spine 1
  1573. .d 1 0
  1574.     jsr ea34
  1575. .o 0 1 i
  1576.     fillI_b 0 0
  1577.     pop_b 1
  1578. .d 1 0
  1579.     rtn
  1580. .o 1 0
  1581. ea34
  1582.     jsr_eval 0
  1583.     pushF_a 0
  1584.     pop_a 1
  1585. .o 0 2 f
  1586. e_StdFile_ssfposition
  1587. .o 0 2 f
  1588. s34
  1589. .inline sfposition
  1590. .d 0 2 f
  1591.     jsr positionSF
  1592. .o 0 1 i
  1593. .end
  1594. .inline openfiles
  1595. .end
  1596. .inline closefiles
  1597. .end
  1598. .inline fopen
  1599. .end
  1600. .inline fclose
  1601. .end
  1602. .inline stdio
  1603. .end
  1604. .inline sfopen
  1605. .end
  1606. .d 0 1 i
  1607.     rtn
  1608.